package com.hxzy.shop.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 腾讯云saas订单
 */
@Data
@ApiModel("腾讯云saas订单")
public class SaasOrder implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId
    @ApiModelProperty("id")
    private Long id;

    /**
     * 订单id
     */
    @ApiModelProperty("订单id")
    private String orderId;

    /**
     * 购买者账户id
     */
    @ApiModelProperty("购买者账户id")
    private String accountId;

    /**
     * 用户在腾讯云开放平台的标识，此标识对于同一服务商是相同的，对于不同服务商是不同的，长度为32位。如果没有接入开放平台，此字段为空
     */
    @ApiModelProperty("用户在腾讯云开放平台的标识，此标识对于同一服务商是相同的，对于不同服务商是不同的，长度为32位。如果没有接入开放平台，此字段为空")
    private String openId;

    /**
     * 云市场产品 ID
     */
    @ApiModelProperty("云市场产品 ID")
    private Integer productId;

    /**
     * 云市场的实例ID
     */
    @ApiModelProperty("云市场的实例ID")
    private String resourceId;


    /**
     * 购买的产品名称
     */
    @ApiModelProperty("购买的产品名称")
    private String productName;

    /**
     * 是否为试用，true：是，false：否
     */
    @ApiModelProperty("是否为试用，true：是，false：否")
    private Boolean trial;

    /**
     * 产品规格，是试用时为空
     */
    @ApiModelProperty("产品规格，是试用时为空")
    private String spec;

    /**
     * 购买时长单位（y、m、d、h、t 分别代表年、月、日、时、次），是试用时为空
     * 注：这里所描述的年、月为自然年、自然月的概念；举例：2月1日买的包月商品，3月1日到期
     */
    @ApiModelProperty("购买时长单位（y、m、d、h、t 分别代表年、月、日、时、次），是试用时为空注：这里所描述的年、月为自然年、自然月的概念；举例：2月1日买的包月商品，3月1日到期")
    private String timeUnit;

    /**
     * 备注信息
     */
    @ApiModelProperty("备注信息")
    private String comment;

    /**
     * 购买时长，是试用时为空
     */
    @ApiModelProperty("购买时长，是试用时为空")
    private Integer timeSpan;

    /**
     * 创建时间
     */
    @ApiModelProperty("订单创建时间")
    private Date createTime;

    /**
     * 到期时间
     */
    @ApiModelProperty("过期时间")
    private Date expireTime;

}
